package com.ruoyi.util.backCard;

import java.util.HashMap;
import java.util.Map;

public class BankCardUtil {
    private static final Map<String, String> BIN_MAP = new HashMap<>();
    private BankCardUtil() {}
    static {
        // 初始化 BIN 号和银行名称的映射
        BIN_MAP.put("621226", "工商银行");
        BIN_MAP.put("621227", "工商银行");
        BIN_MAP.put("621228", "工商银行");
        BIN_MAP.put("955880", "工商银行");
        BIN_MAP.put("621700", "建设银行");
        BIN_MAP.put("621701", "建设银行");
        BIN_MAP.put("621702", "建设银行");
        BIN_MAP.put("436700", "建设银行");
        BIN_MAP.put("621336", "农业银行");
        BIN_MAP.put("621337", "农业银行");
        BIN_MAP.put("621338", "农业银行");
        BIN_MAP.put("955998", "农业银行");
        BIN_MAP.put("621756", "中国银行");
        BIN_MAP.put("621757", "中国银行");
        BIN_MAP.put("621758", "中国银行");
        BIN_MAP.put("456351", "中国银行");
        BIN_MAP.put("622580", "招商银行");
        BIN_MAP.put("622581", "招商银行");
        BIN_MAP.put("622582", "招商银行");
        BIN_MAP.put("622588", "招商银行");
        BIN_MAP.put("6014", "交通银行");
        BIN_MAP.put("5218", "交通银行");
        BIN_MAP.put("6282", "光大银行");
        BIN_MAP.put("3568", "光大银行");
        BIN_MAP.put("6226", "民生银行");
        BIN_MAP.put("4218", "民生银行");
        BIN_MAP.put("6229", "兴业银行");
        BIN_MAP.put("4864", "兴业银行");
        BIN_MAP.put("6029", "平安银行");
        BIN_MAP.put("9988", "平安银行");
    }
//获取银行卡归属银行
    public static String identifyBank(String bankCard) {
        String bin = bankCard.substring(0, Math.min(bankCard.length(), 4));
        return BIN_MAP.getOrDefault(bin, "未知银行");
    }

}
